<template>
  <div>

    <!-- 阿里云视频播放器样式 -->
    <link rel="stylesheet" href="https://g.alicdn.com/de/prismplayer/2.9.3/skins/default/aliplayer-min.css" />
    <!-- 阿里云视频播放器脚本 -->
    <script type="text/javascript" charset="utf-8" src="https://g.alicdn.com/de/prismplayer/2.9.3/aliplayer-min.js"></script>

    <!-- 定义播放器dom -->
    <div id="J_prismPlayer" class="prism-player" />
  </div>
</template>
<script>
  import vodService from '@/api/vod.js'
  export default {
    layout: 'video', //应用video布局
    // ***必须使用异步获取视频，不然获取不到视频***
    asyncData({
      params,
      error
    }) {
      return vodService.getPlayAuth(params.vid).then(response => {
        // console.log(response.data.data)
        return {
          vid: params.vid,
          playAuth: response.data.data.playAuth
        }
      })
    },
    data() {
      return {
        vid: '',
        playAuth: ''
      }
    },
    created() {},
    methods: {
      /**
       * 页面渲染完成时：此时js脚本已加载，Aliplayer已定义，可以使用
       * 如果在created生命周期函数中使用，Aliplayer is not defined错误
       */
    },
    mounted() {
      new Aliplayer({
        id: 'J_prismPlayer',
        vid: this.vid, // 视频id
        playauth: this.playAuth, // 播放凭证
        encryptType: '1', // 如果播放加密视频，则需设置encryptType=1，非加密视频无需设置此项
        width: '100%',
        height: '500px',
        autoplay: false,

        // 以下可选设置
        cover: 'https://libilibi.oss-cn-guangzhou.aliyuncs.com/2021/01/1000042.jpg', // 封面
        qualitySort: 'asc', // 清晰度排序
        mediaType: 'video', // 返回音频还是视频
        autoplay: false, // 自动播放
        isLive: false, // 直播
        rePlay: false, // 循环播放
        preload: true,
        controlBarVisibility: 'hover', // 控制条的显示方式：鼠标悬停
        useH5Prism: true, // 播放器类型：html5
      }, function(player) {
        console.log('播放器创建成功')
      })
    }
  }
</script>
